/****************************************************************************
*					ParameterLearningFactory
*
*	Description:	Class for creating objects of class ParameterLearning by 
*					name or ID of the reqired subclass
*
****************************************************************************/

#ifndef _ParameterLearningFactory_H
#define _ParameterLearningFactory_H

#include <stdio.h>
#include <string>
#include <vector>
#include <algorithm>
#include <stdlib.h>
#include "ParameterLearning.h"


class ParameterLearningFactory {
  private:

  protected:
 
  public:

	// Class constructor
    ParameterLearningFactory(void);
  
	// Class destructor
	~ParameterLearningFactory(void);
	
	// Creates ParameterLearning object of class with a given ID
	ParameterLearning* createObjectByID(const signed int id);

	// Creates ParameterLearning object of class with a given Name
	ParameterLearning* createObjectByName(const std::string name);

};

#endif // _ParameterLearningFactory_H
